| <<<предыдущая глава | к содержанию | следующая глава >>> |
Рассмотрим полином вида Pn(x)=p1xn+p2xn-1+...+pnx+an+1. Соответственно будем обозначать Р - n+1-мерный вектор коэффициентов, Х - массив значений аргумента.
При вычислении значений полинома для элементов массива можно использовать функцию polyval(P,X):
>>polyval([1 2 5],[0 3 1])
| >> polyval([1 2 5],[0 3 1; 1 1 1])
| |||||||||||||
С помощью функции polyvalm(P,X) можно вычислять значения матричного полинома для квадратной матрицы Х :
| >> polyvalm([1 2 5],[0 3 1; 1 1 1; 0 0 2]) | |||
| ans = | 8 | 9 | 7 |
| 3 | 11 | 6 | |
| 0 | 0 | 13 | |
Умножение полиномов Сm+n(x)=Pm(x) x Qn(x) выполняется командой C=conv(P,Q) -
Деление полиномов можно реализовать командой [C,R]=deconv(A,B) , где С -частное и R - остаток от деления А на В.
>> conv([1 2 3],[5 6])
| [c,r]=deconv([1 2 3],[5 6])
| ||||||||||||||||
Вычисление производных от полинома, произведения и отношения полиномов производится соответственно командами dp=polyder(P), dc=polyder(A,B) и [f,g]=polyder(A,B):
polyder([1 -2 3 4 5])
| >> polyder([1 2 3],[5 6])
| >> [f,g]=polyder([1 2 3],[5 6])
| ||||||||||||||||||||||
Вычисление корней полинома реализуется функцией roots(P), а построение полинома по его корням - функцией poly(R).
| >> r=roots([1 3 5 7]) r = -2.1795 -0.4102 + 1.7445 i -0.4102 - 1.7445 i | >>poly(r)
| ||||||||
Функция poly(А) обеспечивает построение характеристического полинома |lE-A|=0 (см. проблему собственных значений):
| >> A= magic(3) | |||
| A = | 8 | 1 | 6 |
| 3 | 5 | 7 | |
| 4 | 9 | 2 | |
| >>P=poly(A) | |||
| P = | |||
| 1.0e+002 * | |||
| 0.0100 | -0.1500 | -0.2400 | 3.6000 |
В приложениях, особенно связанных с преобразованием Лапласа при решении дифференциальных уравнений, оперируют с отношениями полиномов и представлениями их в виде простых дробей:
,
где sk - простые корни полинома Qn(s); если некоторый корень sj имеет кратность m, то соответствующее слагаемое представляется в виде,
Команда [r,s,f] =residue(P,Q) дает разложение отношения полиномов на простые дроби (в случае близких корней возможна значительная погрешность). В случае кратного корня пользуются функцией rj=resi2(P,Q,sj,m,j), где j -номер вычисляемого коэффициента (по умолчанию j=m); по умолчанию m=1 (простой корень).
Команда [P,Q] =residue(r,s,f) выполняет обратное действие свертки разложения в отношение полиномов.
Выполнив действия
|
| |||||||||||||||||||||||||||||||
видим, что
В случае кратного корня
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
видим разложение:
| <<<предыдущая глава | к содержанию | следующая глава >>> |